package com.ux.iot.jetlinks.service.sub;

/**
 * @author caixiaodao
 * @version 1.0
 * 功能描述
 * topic 常量
 * @date 2021/11/16 13:36
 */
public class SubContant {
    //所有订阅的前缀
    public static final  String topic_Prefix="/device/{productId}/*";
//    协议包将设备上报后的报文解析为平台统一的设备消息后,会将消息转换为对应的topic 并发送到事件总线,可以通过从事件总线订阅消息来处理这些消息。
//    所有设备消息的topic的前缀均为: /device/{productId}/{deviceId}.
//    如:产品product-1下的设备device-1上线消息: /device/product-1/device-1/online.
//    可通过通配符订阅所有设备的指定消息,如:/device/*/*/online,或者订阅所有消息:/device/**.
//    此topic和mqtt的topic没有任何关系,仅仅作为系统内部通知的方式
//    使用通配符订阅可能将收到大量的消息,请保证消息的处理速度,否则会影响系统消息吞吐量.
    public static final  String ONLINE="/online"	;//DeviceOnlineMessage	设备上线
    public static final  String OFFLINE="/offline"	;//DeviceOfflineMessage	设备离线
    public static final  String MESSAGE_EVENT_EVENTID="/message/event/*";//DeviceEventMessage	设备事件
    public static final  String MESSAGE_PROPERTY_REPORT="/message/property/report"	;//ReportPropertyMessage	设备上报属性
    public static final  String MESSAGE_SEND_PROPERTY_READ="/message/send/property/read"	;//ReadPropertyMessage	平台下发读取消息指令
    public static final  String MESSAGE_SEND_PROPERTY_WRITE="/message/send/property/write"	;//WritePropertyMessage	平台下发修改消息指令
    public static final  String MESSAGE_PROPERTY_READ_REPLY="/message/property/read/reply"	;//ReadPropertyMessageReply	读取属性回复
    public static final  String MESSAGE_PROPERTY_WRITE_REPLY="/message/property/write/reply"	;//WritePropertyMessageReply	修改属性回复
    public static final  String MESSAGE_SEND_FUNCTION="/message/send/function"	;//FunctionInvokeMessage	平台下发功能调用
    public static final  String MESSAGE_FUNCTION_REPLY="/message/function/reply"	;//FunctionInvokeMessageReply	调用功能回复
    public static final  String REGISTER="/register"	;//DeviceRegisterMessage	设备注册,通常与子设备消息配合使用
    public static final  String UNREGISTER="/unregister"	;//DeviceUnRegisterMessage	设备注销,同上
    public static final  String MESSAGE_CHILDREN_CHILDRENDEVICEID_TOPIC="/message/children/*/*"	;//ChildDeviceMessage	子设备消息,{topic}为子设备消息对应的topic
    public static final  String MESSAGE_CHILDREN_REPLY="/message/children/reply/*/*"	;//ChildDeviceMessage	子设备回复消息,同上
    public static final  String MESSAGE_DIREC="/message/direct"	;//DirectDeviceMessage	透传消息
    public static final  String METADATA_DERIVED="/metadata/derived";//DerivedMetadataMessage	更新物模型
}
